#pragma once
#ifndef __MESHFILTER_H__
#define __MESHFILTER_H__

#include "Utility.h"

#include "../util/PreDeclare.h"
#include "../util/D3DCommon.h"
#include "../game/Component.h"

namespace WindGE
{
	class WIND_CORE_API MeshFilter : public Component
	{
	public:
		MeshFilter();
		MeshFilter(GameObjectPtr gameObject);

		~MeshFilter();

		bool init(RenderDevicePtr renderDevice, MeshPartPtr meshPart, GraphicsBufferPtr graphicsBuffer);

		inline MeshPartPtr		 mesh_part()		const { return mesh_part_;		 }
		inline GraphicsBufferPtr graphics_buffer()	const { return graphics_buffer_; }

	protected:
		MeshPartPtr			mesh_part_;
		GraphicsBufferPtr	graphics_buffer_;
	};

}//end namespace WindGE

#endif // !__MESHFILTER_H__

